In recent years convolutional neural networks (CNN) have played major roles in improving the state of the art across a wide range of problems in computer vision, including image classification, object detection, segmentation, etc. These models are very expensive in terms of computation and memory. For example, AlexNet has 61 million parameters and performs 1.5 billion high precision operations to classify a single image. These numbers are even higher for deeper networks (e.g., the Visual Geometry Group (VGG) networks). The computational burden of learning and inference for these models is significantly higher than what many computing platforms can afford.